home *** CD-ROM | disk | FTP | other *** search
/ Java Programmer's Toolkit / Java Programmer's Toolkit.iso / applets / plot2d / g2d0.jav < prev    next >
Encoding:
Text File  |  1996-01-11  |  1.5 KB  |  65 lines

  1. import java.awt.*;
  2. import java.applet.*;
  3.  
  4. public class g2d0 extends Applet {
  5.  
  6.       Graph2D graph;
  7.       DataSet data1;
  8.       DataSet data2;
  9.       DataSet data3;
  10.       DataSet data4;
  11.  
  12.       public void init() {
  13.         int i;
  14.         int j;
  15.  
  16.         graph = new Graph2D();
  17.  
  18.         setLayout( new BorderLayout() );
  19.         add("Center", graph);
  20.  
  21.         graph.framecolor = new Color(145,120,255);
  22.         graph.border = 5;
  23.  
  24.         data1 = gaussian(1.0, 1.0, .5);  
  25.         data1.linecolor = new Color(72,118,255);
  26.         data1.ymax = 1.0;
  27.  
  28.         data2 = gaussian(0.75, 1.0, .5);
  29.         data2.linecolor   =  new Color(67,110,238);
  30.         data2.ymax = 1.0;
  31.  
  32.         data3 = gaussian(0.5, 1.0, .5);
  33.         data3.linecolor   =  new Color(58,95,205);
  34.         data3.ymax = 1.0;
  35.  
  36.         data4 = gaussian(0.25, 1.0, .5);
  37.         data4.linecolor   =  new Color(39,64,139);
  38.         data4.ymax = 1.0;
  39.  
  40.       }
  41.  
  42.       public void paint(Graphics g) {
  43.            graph.paint(g);
  44.       }
  45.  
  46.  
  47.       public DataSet gaussian(double amplitude, double range, double scale) {
  48.             int i, j;
  49.             int np = 100;
  50.             double data[] = new double[2*np];
  51.             double x, y;
  52.  
  53.             for(i=j=0; i<np; i++,j+=2) {
  54.                 x = (i-np/2)*range/(np/2);
  55.                 y = -x*x/(scale*scale);
  56.                 data[j] = x;
  57.                 data[j+1] = amplitude * Math.exp(y);
  58.             }
  59.             
  60.             return graph.loadDataSet(data,np);
  61.  
  62.  
  63.       }
  64. }
  65.